DAX (Data Analysis Expressions) হল একটি শক্তিশালী ভাষা যা Power BI, Power Pivot, এবং SQL Server Analysis Services (SSAS)-এ ব্যবহৃত হয়। REMOVEFILTERS এবং KEEPFILTERS ফাংশন দুটি অত্যন্ত গুরুত্বপূর্ণ টুল, যা filters নিয়ন্ত্রণ করার জন্য ব্যবহৃত হয়। এই ফাংশনগুলির মাধ্যমে আপনি ডেটা বিশ্লেষণের সময় কীভাবে ফিল্টার প্রভাবিত হবে তা নির্ধারণ করতে পারেন এবং ডেটার সঠিকতা এবং বিশ্লেষণ ক্ষমতা বজায় রাখতে পারেন।
ফিল্টার ব্যবস্থাপনা সঠিকভাবে করা গেলে, এটি ব্যবসায়িক সিদ্ধান্ত গ্রহণের জন্য খুবই গুরুত্বপূর্ণ তথ্য প্রদান করতে পারে। REMOVEFILTERS এবং KEEPFILTERS ব্যবহার করে আপনি যেভাবে ফিল্টারগুলি পরিচালনা করবেন তা আপনাকে আরও গভীর বিশ্লেষণ এবং কাস্টম ক্যালকুলেশন তৈরিতে সহায়ক হতে পারে।
১. REMOVEFILTERS() ফাংশন
REMOVEFILTERS() ফাংশনটি ব্যবহার করে আপনি একটি টেবিল বা কলাম থেকে সব ফিল্টার সরিয়ে ফেলতে পারেন। এটি খুবই উপকারী যখন আপনি চান, একটি নির্দিষ্ট ক্যালকুলেশনে কোনো ফিল্টার প্রভাবিত না হোক বা ক্যালকুলেশনকে সাধারণ করতে।
Syntax:
REMOVEFILTERS(<table_or_column>)
<table_or_column>: এখানে আপনি যে টেবিল বা কলাম থেকে ফিল্টার সরিয়ে ফেলতে চান, তা উল্লেখ করবেন।
ব্যবহার:
ধরা যাক, আপনার Sales টেবিল রয়েছে এবং আপনি Region কলামের উপর প্রভাবিত ফিল্টার সরিয়ে ফেলতে চান, তাহলে আপনি এই ফাংশন ব্যবহার করতে পারেন:
Total Sales Without Region Filter = CALCULATE(SUM(Sales[Amount]), REMOVEFILTERS(Sales[Region]))
এই ফাংশনটি Sales টেবিলের Region কলামের উপর কোনো ফিল্টার প্রভাব ফেলবে না এবং Sales[Amount] এর মোট মান হিসাব করবে।
কখন ব্যবহার করবেন REMOVEFILTERS:
- যখন আপনি চাইবেন নির্দিষ্ট কোনো ফিল্টার বা শর্তের প্রভাব থেকে বেরিয়ে আসতে।
- ALL ফাংশনের সাথে REMOVEFILTERS ব্যবহার করা সাধারণ একটি কৌশল, কারণ এটি সব ফিল্টার সরিয়ে দিয়ে সেরা ফলাফল প্রদান করতে সাহায্য করে।
২. KEEPFILTERS() ফাংশন
KEEPFILTERS() ফাংশনটি যখন ব্যবহার করা হয়, এটি নির্দিষ্ট ফিল্টার বা শর্তগুলিকে বজায় রাখে, কিন্তু অন্য কোনো ফিল্টার পরিবর্তন বা হালকা ক্যালকুলেশন করতে দেয় না। এটি ফিল্টারিং ব্যবস্থাকে বজায় রেখে একটি কাস্টম ক্যালকুলেশন করতে সহায়ক।
Syntax:
KEEPFILTERS(<expression>)
<expression>: এটি ফিল্টার বা শর্ত প্রয়োগ করতে হবে এমন অংশ বা ক্যালকুলেশন।
ব্যবহার:
ধরা যাক, আপনি Sales টেবিলের Amount কলামের উপর কাস্টম ক্যালকুলেশন করতে চান এবং শুধু Region ফিল্টার রাখতে চান। এই পরিস্থিতিতে, আপনি KEEPFILTERS ব্যবহার করতে পারেন:
Sales for Region = CALCULATE(SUM(Sales[Amount]), KEEPFILTERS(Sales[Region] = "East"))
এই ফাংশনটি শুধুমাত্র East অঞ্চলের ফিল্টার রেখে Sales[Amount] এর মোট মান নির্ধারণ করবে, অন্য কোন ফিল্টার প্রভাব ফেলবে না।
কখন ব্যবহার করবেন KEEPFILTERS:
- যখন আপনি ফিল্টার বা শর্ত একটি নির্দিষ্ট অংশে রাখতে চান, কিন্তু অন্যান্য অংশে তা পরিবর্তিত বা প্রভাবিত হতে দেবেন না।
- যখন আপনি চাইবেন যে একটি নির্দিষ্ট শর্ত বজায় থাকবে, তবে বাকি সমস্ত শর্তগুলো অবহেলা করতে।
REMOVEFILTERS এবং KEEPFILTERS এর মধ্যে পার্থক্য
| ফিচার | REMOVEFILTERS | KEEPFILTERS |
|---|---|---|
| ফিল্টার ব্যবস্থাপনা | সমস্ত ফিল্টার সরিয়ে ফেলবে | নির্দিষ্ট ফিল্টার বজায় রাখবে |
| ব্যবহার ক্ষেত্র | যখন ফিল্টারকে সম্পূর্ণভাবে অপসারণ করতে হবে | যখন কিছু নির্দিষ্ট ফিল্টার থাকতে হবে |
| ফলাফল | ফিল্টার হীন ক্যালকুলেশন | কাস্টম ফিল্টার ধরে রেখে ক্যালকুলেশন |
DAX উদাহরণ (REMOVEFILTERS এবং KEEPFILTERS)
১. REMOVEFILTERS উদাহরণ (Removing All Filters)
ধরা যাক, আপনি Sales টেবিল থেকে সমস্ত ফিল্টার সরিয়ে মোট বিক্রয় সংখ্যা বের করতে চান, তবে Region কলামের উপর ফিল্টার থাকতে পারে:
Total Sales Without Filters = CALCULATE(SUM(Sales[Amount]), REMOVEFILTERS(Sales))
এটি Sales টেবিলের সমস্ত কলামের ফিল্টার সরিয়ে Sales[Amount] এর মোট মান বের করবে।
২. KEEPFILTERS উদাহরণ (Keep Specific Filter)
ধরা যাক, আপনি শুধু East অঞ্চলের বিক্রয় জানাতে চান এবং অন্যান্য অঞ্চলের ফিল্টার রাখবেন না:
East Region Sales = CALCULATE(SUM(Sales[Amount]), KEEPFILTERS(Sales[Region] = "East"))
এটি শুধুমাত্র East অঞ্চলের বিক্রয় সংখ্যা বের করবে, এবং অন্য কোনো ফিল্টার প্রভাব ফেলবে না।
সারাংশ
REMOVEFILTERS এবং KEEPFILTERS ফাংশনগুলি DAX এর অত্যন্ত গুরুত্বপূর্ণ টুলস যা ডেটা বিশ্লেষণের সময় ফিল্টার ব্যবস্থাপনা সহজ এবং কার্যকর করে। REMOVEFILTERS ব্যবহার করে আপনি ফিল্টার সরিয়ে ফেলতে পারেন এবং KEEPFILTERS ব্যবহার করে আপনি নির্দিষ্ট শর্ত বজায় রেখে ক্যালকুলেশন করতে পারেন। এগুলি ব্যবহারের মাধ্যমে আপনি আরো উন্নত এবং কাস্টম বিশ্লেষণ তৈরি করতে পারবেন, যা ডেটা বিশ্লেষণ এবং রিপোর্টিং প্রক্রিয়াকে আরো কার্যকরী করে তোলে।
Read more